package cn.com.cifi.mars.entity;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.io.Serializable;

import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * VIEW
 * </p>
 *
 * @author JingYuanXiang
 * @since 2021-03-28
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="VC1ReturnPlanDynamicNos对象", description="VIEW")
@TableName("v_c1_return_plan_dynamic_nos")
public class C1ReturnPlanDynamicNos implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键-版本ID")
    private String payVersionId;

    @ApiModelProperty(value = "版本号")
    private String payVersionNum;

    @ApiModelProperty(value = "版本类型：cast_decision(投资版)、strategy(战规版)、budget(预算版)、dynamic(动态版)")
    private String payVersionStage;

    private String payVersionStageName;

    @ApiModelProperty(value = "归属年份（预算版）")
    private String compileYear;

    private String versionIdentify;

    @ApiModelProperty(value = "版本归属时间yyyy-MM")
    private String affiliationMonth;

    @ApiModelProperty(value = "签约计划版本ID")
    private String pkSignVersionId;

    @ApiModelProperty(value = "创建时间")
    private LocalDateTime createTime;

    @ApiModelProperty(value = "更新时间")
    private LocalDateTime updateTime;

    @ApiModelProperty(value = "项目ID")
    private String projectId;

    @ApiModelProperty(value = "项目编号")
    private String projectCode;

    @ApiModelProperty(value = "项目名称")
    private String projectName;

    @ApiModelProperty(value = "分期ID")
    private String stageId;

    @ApiModelProperty(value = "分期编号")
    private String stageCode;

    @ApiModelProperty(value = "分期名称")
    private String stageName;

    @ApiModelProperty(value = "组团id")
    private String groupId;

    @ApiModelProperty(value = "组团code")
    private String groupCode;

    @ApiModelProperty(value = "组团名称")
    private String groupName;

    @ApiModelProperty(value = "产品构成code")
    private String productCode;

    @ApiModelProperty(value = "产品构成名称")
    private String productName;

    @ApiModelProperty(value = "装修方式编码")
    private String freeType;

    @ApiModelProperty(value = "装修方式名称")
    private String freeTypeName;

    @ApiModelProperty(value = "经营方式编码")
    private String businessType;

    @ApiModelProperty(value = "经营方式名称")
    private String businessTypeName;

    @ApiModelProperty(value = "产品属性编码（属性标签）")
    private String proType;

    @ApiModelProperty(value = "产品属性名称（属性标签）")
    private String proTypeName;

    @ApiModelProperty(value = "回款计划日期")
    private LocalDateTime payPlanMonth;

    @ApiModelProperty(value = "增量回款-实际数")
    private BigDecimal actualIncremental;

    private BigDecimal actualStock;

    private BigDecimal calculateIncremental;

    private BigDecimal calculateStock;

    @ApiModelProperty(value = "增量回款-调整数")
    private BigDecimal adjustIncremental;

    @ApiModelProperty(value = "存量回款-调整数")
    private BigDecimal adjustStock;

    @ApiModelProperty(value = "签约应收回款（NOS专用）")
    private BigDecimal signReceivable;

    @ApiModelProperty(value = "增量回款-本期回款数")
    private BigDecimal incrementalTotal;

    @ApiModelProperty(value = "存量回款-本期回款数")
    private BigDecimal stockTotal;

    @ApiModelProperty(value = "回款合计-本期回款数")
    private BigDecimal returnTotal;


}
